home *** CD-ROM | disk | FTP | other *** search
/ Aminet 38 / Aminet 38 (2000)(Schatztruhe)[!][Aug 2000].iso / Aminet / util / libs / IdentifyDev.lha / Identify / developer / include / libraries / identify.i < prev   
Encoding:
Text File  |  1999-12-27  |  15.9 KB  |  375 lines

  1. **
  2. **      $VER: identify.i 12.0 (27.12.1999)
  3. **
  4. **      identify.library definitions
  5. **
  6. **      (C) Copyright 1996-99 Richard Koerber
  7. **      All Rights Reserved.
  8. **
  9.  
  10.         IFND    LIBRARIES_IDENTIFY_I
  11. LIBRARIES_IDENTIFY_I    SET     1
  12.  
  13.         IFND    EXEC_TYPES_I
  14.         INCLUDE 'exec/types.i'
  15.         ENDC
  16.  
  17.         IFND    EXEC_LIBRARIES_I
  18.         INCLUDE 'exec/libraries.i'
  19.         ENDC
  20.  
  21.         IFND    UTILITY_TAGITEM_I
  22.         INCLUDE utility/tagitem.i
  23.         ENDC
  24.  
  25. _IDTAGS         EQU     $CD450000
  26.  
  27. *------------------------------------------------------------------------*
  28. * Generic library informations
  29. *
  30. IDENTIFYNAME    MACRO
  31.         dc.b    "identify.library",0
  32.         ENDM
  33.  
  34. IDENTIFYVERSION EQU     12
  35.  
  36.     STRUCTURE IdentifyBase,0
  37.     STRUCT  ifyb_LibNode,LIB_SIZE
  38.     LABEL   ifyb_SIZEOF
  39.  
  40. IDENTIFYBUFLEN  EQU     50              ; default buffer length
  41.  
  42. *------------------------------------------------------------------------*
  43. * Expansion() tags
  44. *
  45. IDTAG_ConfigDev EQU     _IDTAGS+$00     ;(struct ConfigDev *) ConfigDev
  46.                     ; structure to be evaluated
  47. IDTAG_ManufID   EQU     _IDTAGS+$01     ;UWORD manufacturer ID if no
  48.                     ; ConfigDev is available
  49. IDTAG_ProdID    EQU     _IDTAGS+$02     ;UBYTE product ID if no
  50.                     ; ConfigDev is available
  51. IDTAG_StrLength EQU     _IDTAGS+$03     ;UWORD of maximum buffer length,
  52.                     ; including termination. Default
  53.                     ; is 50.
  54. IDTAG_ManufStr  EQU     _IDTAGS+$04     ;STRPTR of manufacturer name
  55.                     ; puffer, or NULL
  56. IDTAG_ProdStr   EQU     _IDTAGS+$05     ;STRPTR of product name
  57.                     ; puffer, or NULL
  58. IDTAG_ClassStr  EQU     _IDTAGS+$06     ;STRPTR of product class
  59.                     ; puffer, or NULL
  60. IDTAG_DeadStr   EQU     _IDTAGS+$07     ;STRPTR deadend or recoverable alert?
  61. IDTAG_SubsysStr EQU     _IDTAGS+$08     ;STRPTR alert subsystem
  62. IDTAG_GeneralStr EQU    _IDTAGS+$09     ;STRPTR alert general cause
  63. IDTAG_SpecStr   EQU     _IDTAGS+$0A     ;STRPTR alert specific cause
  64. IDTAG_FuncNameStr EQU   _IDTAGS+$0B     ;STRPTR function name
  65. IDTAG_Expansion EQU     _IDTAGS+$0C     ;(struct ConfigDev **) for a
  66.                     ; complete expansion check. Init
  67.                     ; the variable with NULL.
  68. IDTAG_Secondary EQU     _IDTAGS+$0D     ;BOOL warn for secondary expansion
  69.                     ; boards (defaults to FALSE) [V7]
  70. IDTAG_ClassID   EQU     _IDTAGS+$0E     ;ULONG * class ID of the provided
  71.                     ; expansion board (see below) [V8]
  72. IDTAG_Localize  EQU     _IDTAGS+$0F     ;BOOL return localized strings
  73.                     ; (defaults to TRUE) [V8]
  74. IDTAG_NULL4NA   EQU     _IDTAGS+$10     ;BOOL return NULL for not available,
  75.                     ; else return a string (defaults to
  76.                     ; FALSE) [V8]
  77.  
  78. *------------------------------------------------------------------------*
  79. * Hardware description types
  80. *
  81. IDHW_SYSTEM     EQU     0       ; System (Amiga,DraCo,...)              [V2]
  82. IDHW_CPU        EQU     1       ; CPU (68000,68010,...,68060)
  83. IDHW_FPU        EQU     2       ; FPU (---,68881,68882,68040,68060)
  84. IDHW_MMU        EQU     3       ; MMU (---,68852,68030,68040,68060)
  85. IDHW_OSVER      EQU     4       ; OS Version (V*.*)
  86. IDHW_EXECVER    EQU     5       ; Exec Version (V*.*)
  87. IDHW_WBVER      EQU     6       ; Workbench Version (---,V*.*)
  88. IDHW_ROMSIZE    EQU     7       ; OS ROM Size (*KB, *MB)
  89. IDHW_CHIPSET    EQU     8       ; Chipset (OCS,ECS,AGA,DraCo)
  90. IDHW_GFXSYS     EQU     9       ; Graphic OS (AmigaOS, CyberGraphX, ...)
  91. IDHW_CHIPRAM    EQU     10      ; All Chip RAM (*KB, *MB, *GB)
  92. IDHW_FASTRAM    EQU     11      ; All Fast RAM (*KB, *MB, *GB)
  93. IDHW_RAM        EQU     12      ; All Total RAM (*KB, *MB, *GB)
  94. IDHW_SETPATCHVER EQU    13      ; SetPatch Version (---,V*.*)           [V4]
  95. IDHW_AUDIOSYS   EQU     14      ; Audio OS (AmigaOS, AHI, ...)          [V5]
  96. IDHW_OSNR       EQU     15      ; AmigaOS (2.04, 3.1, ...)
  97. IDHW_VMMCHIPRAM EQU     16      ; VMM Chip RAM (*KB, *MB, *GB)
  98. IDHW_VMMFASTRAM EQU     17      ; VMM Fast RAM (*KB, *MB, *GB)
  99. IDHW_VMMRAM     EQU     18      ; VMM Total RAM (*KB, *MB, *GB)
  100. IDHW_PLNCHIPRAM EQU     19      ; Plain Chip RAM (*KB, *MB, *GB)
  101. IDHW_PLNFASTRAM EQU     20      ; Plain Fast RAM (*KB, *MB, *GB)
  102. IDHW_PLNRAM     EQU     21      ; Plain Total RAM (*KB, *MB, *GB)
  103. IDHW_VBR        EQU     22      ; Vector Base Register                  [V6]
  104. IDHW_LASTALERT  EQU     23      ; Last Alert code
  105. IDHW_VBLANKFREQ EQU     24      ; VBlank Frequency
  106. IDHW_POWERFREQ  EQU     25      ; Power Frequency
  107. IDHW_ECLOCK     EQU     26      ; EClock
  108. IDHW_SLOWRAM    EQU     27      ; Plain Slow RAM (*KB, *MB, *GB)
  109. IDHW_GARY       EQU     28      ; Gary (---,Normal,...)
  110. IDHW_RAMSEY     EQU     29      ; RAMSEY (---,D,F)
  111. IDHW_BATTCLOCK  EQU     30      ; Battery Backed Up Clock (---,Found)
  112. IDHW_CHUNKYPLANAR EQU   31      ; Chunky To Planar Hardware (---,Found) [V7]
  113. IDHW_POWERPC    EQU     32      ; PowerPC present? (---,Found)
  114. IDHW_PPCCLOCK   EQU     33      ; PowerPC clock (unit MHz)
  115. IDHW_CPUREV     EQU     34      ; CPU revision                          [V8]
  116. IDHW_CPUCLOCK   EQU     35      ; CPU clock (unit MHz)
  117. IDHW_FPUCLOCK   EQU     36      ; FPU clock (unit MHz)
  118. IDHW_RAMACCESS  EQU     37      ; Main board RAM access time (unit ns)
  119. IDHW_RAMWIDTH   EQU     38      ; Main board RAM width (bit)
  120. IDHW_RAMCAS     EQU     39      ; Main board RAM CAS mode
  121. IDHW_RAMBANDWIDTH EQU   40      ; Main board RAM bandwidth
  122. IDHW_TCPIP      EQU     41      ; TCP/IP stack                          [V9]
  123. IDHW_PPCOS      EQU     42      ; PowerPC OS
  124. IDHW_AGNUS      EQU     43      ; Agnus chip revision
  125. IDHW_AGNUSMODE  EQU     44      ; Agnus chip mode
  126. IDHW_DENISE     EQU     45      ; Denise chip version                   [V10]
  127. IDHW_DENISEREV  EQU     46      ; Denise chip revision
  128. IDHW_BOINGBAG   EQU     47      ; BoingBag number                       [V12]
  129. IDHW_NUMBEROF   EQU     48      ; Number of types, PRIVATE!
  130.  
  131. *------------------------------------------------------------------------*
  132. * IDHW_SYSTEM numerical result codes
  133. *
  134. IDSYS_AMIGA1000 EQU     0       ; Amiga 1000
  135. IDSYS_AMIGAOCS  EQU     1       ; OCS Amiga 500/2000
  136. IDSYS_AMIGAECS  EQU     2       ; ECS Amiga 500/2000
  137. IDSYS_AMIGA500  EQU     3       ; Amiga 500
  138. IDSYS_AMIGA2000 EQU     4       ; Amiga 2000
  139. IDSYS_AMIGA3000 EQU     5       ; Amiga 3000
  140. IDSYS_CDTV      EQU     6       ; CDTV
  141. IDSYS_AMIGA600  EQU     7       ; Amiga 600
  142. IDSYS_CD32      EQU     8       ; CD32
  143. IDSYS_AMIGA1200 EQU     9       ; Amiga 1200
  144. IDSYS_AMIGA4000 EQU     10      ; Amiga 4000
  145. IDSYS_DRACO     EQU     11      ; DraCo
  146. IDSYS_UAE       EQU     12      ; Ubiquitous Amiga Emulator
  147. IDSYS_AMIGA4000T EQU    13      ; Amiga 4000 Tower
  148.  
  149. *------------------------------------------------------------------------*
  150. * IDHW_CPU numerical result codes
  151. *
  152. IDCPU_68000     EQU     0       ; 68000
  153. IDCPU_68010     EQU     1       ; 68010
  154. IDCPU_68020     EQU     2       ; 68020
  155. IDCPU_68030     EQU     3       ; 68030
  156. IDCPU_68EC030   EQU     4       ; 68EC030 (without MMU)
  157. IDCPU_68040     EQU     5       ; 68040
  158. IDCPU_68LC040   EQU     6       ; 68LC040 (without FPU)
  159. IDCPU_68060     EQU     7       ; 68060
  160. IDCPU_68LC060   EQU     8       ; 68LC060 (without FPU)
  161.  
  162. *------------------------------------------------------------------------*
  163. * IDHW_FPU numerical result codes
  164. *
  165. IDFPU_NONE      EQU     0       ; no FPU
  166. IDFPU_68881     EQU     1       ; 68881
  167. IDFPU_68882     EQU     2       ; 68882
  168. IDFPU_68040     EQU     3       ; 68040
  169. IDFPU_68060     EQU     4       ; 68060
  170.  
  171. *------------------------------------------------------------------------*
  172. * IDHW_MMU numerical result codes
  173. *
  174. IDMMU_NONE      EQU     0       ; no MMU
  175. IDMMU_68851     EQU     1       ; 68851
  176. IDMMU_68030     EQU     2       ; 68030
  177. IDMMU_68040     EQU     3       ; 68040
  178. IDMMU_68060     EQU     4       ; 68060
  179.  
  180. *------------------------------------------------------------------------*
  181. * IDHW_OSNR numerical result codes
  182. *
  183. IDOS_UNKNOWN    EQU     0       ; <V36 or >V40
  184. IDOS_2_0        EQU     1       ; OS2.0  (V36)
  185. IDOS_2_04       EQU     2       ; OS2.04 (V37)
  186. IDOS_2_1        EQU     3       ; OS2.1  (V38)
  187. IDOS_3_0        EQU     4       ; OS3.0  (V39)
  188. IDOS_3_1        EQU     5       ; OS3.1  (V40)
  189. IDOS_3_5        EQU     6       ; OS3.5  (V44)
  190.  
  191. *------------------------------------------------------------------------*
  192. * IDHW_CHIPSET numerical result codes
  193. *
  194. IDCS_OCS        EQU     0       ; OCS
  195. IDCS_ECS        EQU     1       ; ECS
  196. IDCS_AGA        EQU     2       ; AGA
  197. IDCS_ALTAIS     EQU     3       ; DraCo Altais
  198. IDCS_NECS       EQU     4       ; Nearly ECS (no HR-Agnus or HR-Denise)
  199.  
  200. *------------------------------------------------------------------------*
  201. * IDHW_GFXSYS numerical result codes
  202. *
  203. IDGOS_AMIGAOS   EQU     0       ; Plain AmigaOS
  204. IDGOS_EGS       EQU     1       ; EGS
  205. IDGOS_RETINA    EQU     2       ; Retina
  206. IDGOS_GRAFFITI  EQU     3       ; Graffiti
  207. IDGOS_TIGA      EQU     4       ; TIGA
  208. IDGOS_PROBENCH  EQU     5       ; Merlin ProBench
  209. IDGOS_PICASSO   EQU     6       ; Picasso
  210. IDGOS_CGX       EQU     7       ; CyberGraphX
  211. IDGOS_CGX3      EQU     8       ; CyberGraphX 3D
  212. IDGOS_PICASSO96 EQU     9       ; Picasso96
  213. IDGOS_CGX4      EQU     10      ; CyberGraphX V4
  214.  
  215. *------------------------------------------------------------------------*
  216. * IDHW_AUDIOSYS numerical result codes
  217. *
  218. IDAOS_AMIGAOS   EQU     0       ; Plain AmigaOS
  219. IDAOS_MAESTIX   EQU     1       ; MaestroPro driver
  220. IDAOS_TOCCATA   EQU     2       ; Toccata driver
  221. IDAOS_PRELUDE   EQU     3       ; Prelude driver
  222. IDAOS_AHI       EQU     4       ; AHI
  223. IDAOS_MACROAUDIO EQU    5       ; MacroAudio
  224.  
  225. *------------------------------------------------------------------------*
  226. * IDHW_GARY numerical result codes
  227. *
  228. IDGRY_NONE      EQU     0       ; No Gary available
  229. IDGRY_NORMAL    EQU     1       ; Normal Gary
  230. IDGRY_ENHANCED  EQU     2       ; Enhanced Gary
  231.  
  232. *------------------------------------------------------------------------*
  233. * IDHW_RAMSEY numerical result codes
  234. *
  235. IDRSY_NONE      EQU     0       ; No RamSey available
  236. IDRSY_REVD      EQU     1       ; RamSey Revision D
  237. IDRSY_REVF      EQU     2       ; RamSey Revision F
  238.  
  239. *------------------------------------------------------------------------*
  240. * IDHW_POWERPC numerical result codes
  241. *
  242. IDPPC_NONE      EQU     0       ; No PowerPC implemented
  243. IDPPC_OTHER     EQU     1       ; Another PowerPC
  244. IDPPC_602       EQU     2       ; 602
  245. IDPPC_603       EQU     3       ; 603
  246. IDPPC_603E      EQU     4       ; 603e
  247. IDPPC_603P      EQU     5       ; 603p
  248. IDPPC_604       EQU     6       ; 604
  249. IDPPC_604E      EQU     7       ; 604e
  250. IDPPC_620       EQU     8       ; 620
  251.  
  252. *------------------------------------------------------------------------*
  253. * IDHW_RAMCAS numerical result codes
  254. *
  255. IDCAS_NONE      EQU     0       ; Not available
  256. IDCAS_NORMAL    EQU     1       ; Normal access
  257. IDCAS_DOUBLE    EQU     2       ; Double access
  258.  
  259. *------------------------------------------------------------------------*
  260. * IDHW_TCPIP numerical result codes
  261. *
  262. IDTCP_NONE      EQU     0       ; Not available
  263. IDTCP_AMITCP    EQU     1       ; AmiTCP
  264. IDTCP_MIAMI     EQU     2       ; Miami
  265. IDTCP_TERMITE   EQU     3       ; TermiteTCP
  266. IDTCP_GENESIS   EQU     4       ; GENESiS
  267.  
  268. *------------------------------------------------------------------------*
  269. * IDHW_PPCOS numerical result codes
  270. *
  271. IDPOS_NONE      EQU     0       ; None
  272. IDPOS_POWERUP   EQU     1       ; PowerUP (Phase 5)
  273. IDPOS_WARPOS    EQU     2       ; WarpOS (Haage&Partner)
  274.  
  275. *------------------------------------------------------------------------*
  276. * IDHW_AGNUS numerical result codes
  277. *
  278. IDAG_NONE       EQU     0       ; None
  279. IDAG_UNKNOWN    EQU     1       ; Unknown Agnus
  280. IDAG_8361       EQU     2       ; Agnus 8361
  281. IDAG_8367       EQU     3       ; Agnus 8367
  282. IDAG_8370       EQU     4       ; Agnus 8370
  283. IDAG_8371       EQU     5       ; Agnus 8371
  284. IDAG_8372_R4    EQU     6       ; Agnus 8372 Rev. 1-4
  285. IDAG_8372_R5    EQU     7       ; Agnus 8372 Rev. 5
  286. IDAG_8374_R2    EQU     8       ; Alice 8374 Rev. 1-2
  287. IDAG_8374_R3    EQU     9       ; Alice 8374 Rev. 3-4
  288.  
  289. *------------------------------------------------------------------------*
  290. * IDHW_DENISE numerical result codes
  291. *
  292. IDDN_NONE       EQU     0       ; None
  293. IDDN_UNKNOWN    EQU     1       ; Unknown Denise (new model?! :-)
  294. IDDN_8362       EQU     2       ; Denise 8362
  295. IDDN_8373       EQU     3       ; Denise 8373
  296. IDDN_8364       EQU     4       ; Lisa 8364
  297.  
  298. *------------------------------------------------------------------------*
  299. * IDHW_AGNUSMODE numerical result codes
  300. *
  301. IDAM_NONE       EQU     0       ; None
  302. IDAM_NTSC       EQU     1       ; NTSC Agnus
  303. IDAM_PAL        EQU     2       ; PAL Agnus
  304.  
  305. *------------------------------------------------------------------------*
  306. * IDTAG_ClassID numerical result codes
  307. *
  308. IDCID_UNKNOWN           EQU     0       ; unknown functionality
  309. IDCID_MISC              EQU     1       ; miscellaneous expansion
  310. IDCID_TURBO             EQU     2       ; accelerator
  311. IDCID_TURBORAM          EQU     3       ; accelerator RAM
  312. IDCID_TURBOHD           EQU     4       ; accelerator + some HD controller
  313. IDCID_TURBOIDE          EQU     5       ; accelerator + AT-IDE controller
  314. IDCID_TURBOSCSIHD       EQU     6       ; accelerator + SCSI host adapter
  315. IDCID_NET               EQU     7       ; some network
  316. IDCID_ARCNET            EQU     8       ; ArcNet
  317. IDCID_ETHERNET          EQU     9       ; Ethernet
  318. IDCID_AUDIO             EQU     10      ; audio
  319. IDCID_VIDEO             EQU     11      ; video (video digitizer etc)
  320. IDCID_MULTIMEDIA        EQU     12      ; multimedia (audio, video, etc)
  321. IDCID_DSP               EQU     13      ; multi purpose DSP
  322. IDCID_BUSBRIDGE         EQU     14      ; ISA bus bridge
  323. IDCID_BRIDGE            EQU     15      ; PC bridge
  324. IDCID_EMULATOR          EQU     16      ; some Emulator hardware
  325. IDCID_MACEMU            EQU     17      ; Macintosh emulator hardware
  326. IDCID_ATARIEMU          EQU     18      ; Atari emulator hardware
  327. IDCID_GFX               EQU     19      ; graphics (register)
  328. IDCID_GFXRAM            EQU     20      ; graphics (video RAM)
  329. IDCID_HD                EQU     21      ; some HD controller
  330. IDCID_HDRAM             EQU     22      ; some HD controller + RAM
  331. IDCID_IDEHD             EQU     23      ; IDE controller
  332. IDCID_IDEHDRAM          EQU     24      ; IDE controller + RAM
  333. IDCID_SCSIHD            EQU     25      ; SCSI host adapter
  334. IDCID_RAMSCSIHD         EQU     26      ; SCSI host adapter + RAM
  335. IDCID_CDROM             EQU     27      ; CD-ROM interface
  336. IDCID_MODEM             EQU     28      ; internal modem
  337. IDCID_ISDN              EQU     29      ; internal ISDN terminal adapter
  338. IDCID_MULTIIO           EQU     30      ; multi I/O (serial + parallel)
  339. IDCID_SERIAL            EQU     31      ; multi serial (no parallel)
  340. IDCID_PARALLEL          EQU     32      ; multi parallel (no serial)
  341. IDCID_SCANIF            EQU     33      ; scanner interface
  342. IDCID_TABLET            EQU     34      ; drawing tablet interface
  343. IDCID_RAM               EQU     35      ; plain RAM expansion
  344. IDCID_FLASHROM          EQU     36      ; Flash ROM
  345. IDCID_SCSIIDE           EQU     37      ; combined SCSI/IDE controller
  346. IDCID_RAMFPU            EQU     38      ; RAM expansion + FPU
  347. IDCID_GUESS             EQU     39      ; name was unknown but guessed
  348. IDCID_KICKSTART         EQU     40      ; KickStart
  349. IDCID_RAM32             EQU     41      ; 32bit RAM expansion
  350. IDCID_TURBOANDRAM       EQU     42      ; accelerator + RAM expansion
  351. IDCID_ACCESS            EQU     43      ; access control
  352. IDCID_INTERFACE         EQU     44      ; some interface
  353. IDCID_MFMHD             EQU     45      ; MFM HD controller
  354.     ; Be prepared to get other numbers as well. In this case you
  355.     ; should assume IDCID_MISC.
  356.  
  357. *------------------------------------------------------------------------*
  358. * Error codes
  359. *
  360.                 ;Positive error codes are DOS errors!
  361. IDERR_OKAY      EQU     0       ;No error
  362. IDERR_NOLENGTH  EQU     -1      ;Buffer length is 0 ??
  363. IDERR_BADID     EQU     -2      ;Missing or bad board ID
  364. IDERR_NOMEM     EQU     -3      ;Not enough memory
  365. IDERR_NOFD      EQU     -4      ;No fitting FD file found
  366. IDERR_OFFSET    EQU     -5      ;Function offset not found
  367. IDERR_DONE      EQU     -6      ;Done with traversing (not an error)
  368. IDERR_SECONDARY EQU     -7      ;Secondary expansion board (not an error)
  369.  
  370. *------------------------------------------------------------------------*
  371. * That's all...
  372. *
  373.     ENDC
  374.  
  375.